package com.zb.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.zb.entity.ZjWorkLog;
import com.zb.list.WorkLogListVo;
import com.zb.result.PageUtil;
import com.zb.vo.WorkLogVo;

import java.util.List;
import java.util.Map;

/**
 * <p>
 * 工单日志表 服务类
 * </p>
 *
 * @author WEN
 * @since 2023-09-22
 */
public interface ZjWorkLogService extends IService<ZjWorkLog> {
    /**
     * 保存工单客服操作日志
     * @param logVo
     */
    void saveService(WorkLogVo logVo);


    /**
     * 批量保存工单客服操作日志
     * @param logVos
     */
    void saveService(List<WorkLogVo> logVos);

    /**
     * 保存工单网点操作日志
     * @param logVo
     */
    void saveNetwork(WorkLogVo logVo);


    /**
     * 批量保存工单网点操作日志
     * @param logVos
     */
    void saveNetwork(List<WorkLogVo> logVos);

    /**
     * 保存工单客户操作日志
     * @param logVo
     */
    void saveOrderUser(WorkLogVo logVo);

    /**
     * 批量保存工单客户操作日志
     * @param logVos
     */
    void saveOrderUser(List<WorkLogVo> logVos);

    /**
     * 保存乐开伙伴云操作日志
     * @param logVo
     */
    void saveLKaiHoubanyun(WorkLogVo logVo);

    /**
     * 根据工单ID获取最新进展
     * @param workId 工单ID
     * @return
     */
    WorkLogListVo getOrderLastLogByWorkId(Long workId);

    /**
     * 根据工单ID获取工单操作记录列表
     * @param workId 工单ID
     * @param pageUtil 分页信息
     * @return
     */
    Map<String, Object> getOrderLogList(Long workId, PageUtil pageUtil);

    public void save(ZjWorkLog log, List<String> annexs);
}
